Recently, many major mobile and desktop operating systems (“OSs”), such as iOS, Android, macOS, and Windows, have released support for intelligent personal assistants (“IPAs”), such as Apple's Siri, Google Assistant, Microsoft's Cortana and the like. In general, an IPA is a software agent that can perform tasks or services for an individual/operator of the device on which it is installed. These tasks and services are based on user input, location awareness, and the ability to access information from a variety of online sources (such as weather or traffic conditions, news, stock prices, user schedules, retail prices, and the like). Thus, this technology helps individuals/operators perform various actions like searching for files, photos and other data, launching applications, starting VoIP (voice over Internet) calls, sending messages, and the like, by orally communicating instructions to the IPA in a natural human language.
On desktops, the IPA technology is available on the latest version of the operating systems only (e.g., macOS Sierra—version 10.12 and Windows 10). In contrast, if a user has a desktop with an older operating system, the user cannot use a native IPA to operate the desktop since the IPA is integrated into operating system, but is not available as stand-alone add-on software application.
At the same time, IPAs are also available on major mobile operating systems, such as iOS and Android. Recently, Apple and Google have begun providing third-party software developers with software development kits (“SDK”) that enables the creation of software applications for a certain software packages, such as Siri and Google Assistant. Using these application program interfaces (“APIs”), these third-party software developers can develop software applications to receive an individual operator's intent/instruction to perform an action and the related parameters for the action. Then, the application can fulfill the desired action while the IPA executes the low-level operations, such as voice recognition on different languages, command semantics analysis, and the like.
Because IPAs on mobile devices have been developed earlier and are more prominent than on desktop computing devices, there currently remain a significant number of desktop computers with legacy operating systems that will likely never receive native IPA support. Thus, even though some existing application programming interfaces for IPAs can pass a limited set of user's instructions (e.g., send a message, find a photo, make a VoIP call) to third-party applications, there remains a need for IPAs to interact with legacy operating systems on personal computing devices